1. Field of the Invention
The present invention relates to computing devices. In particular, but not by way of limitation, the present invention relates to frequency scaling in asymmetric multicore processors and multicore chipsets.
2. Relvant Background
In asymmetric multiprocessing (ASMP) of multicore chipsets, each processing core in the chipset can independently scale the processing frequency within the core. On ASMP computing devices, the frequencies of the online processing units can scale asynchronously. Therefore, a first processing core may process a computing thread at a maximum turbo frequency of 1.5 GHz while a second processing core may process a computing thread at a frequency of, for example, 384 MHz. When a computing thread is being processed (i.e., running) on the first processing core at the maximum turbo frequency, the computing thread may be migrated to a second processing core. When this happens and the second processing core frequency is lower than the first processing core frequency, the second processing core may process the computing thread slower than the first processing core. Such cases may lead to stretched timelines and lower throughput with the multicore chipset than with a single processing core, and such stretched timelines and lower throughput may cause visual stutters and/or missed vertical synchronizations or “vsyncs.” As a result, multicore chipset performance may be worse than a single processing core performance. Such decreased performance may occur during email scroll, or WLAN processing, for example.
Another problem with current ASMP chipsets occurs with ramping up the load to a maximum (turbo) frequency. With a single core, the load may ramp to the turbo frequency when the load on the core crosses a threshold of 90% of the maximum frequency. Since in a multi-core scenario the load is distributed across different cores, the load threshold(s) for ramping up frequency need to be different from those of single core in order to maximize efficiency and minimize power consumption.